package de.jmda.core.mproc;

import java.util.HashSet;
import java.util.Set;

import javax.annotation.processing.Processor;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlRootElement;

import de.jmda.core.util.fileset.FileSetJavaFilesOnly;

/**
 * Stores all the information that {@link LaunchConfigurationBuilder} uses to
 * build a {@link LaunchConfiguration}.
 */
@XmlRootElement
public class LaunchConfigurationBuilderData
{
	@XmlElement
	public FileSetJavaFilesOnly fileSetJavaSources = new FileSetJavaFilesOnly();

	@XmlElementWrapper
	@XmlElements
	(
			@XmlElement(name="processorClass")
	)
	public Set<Class<? extends Processor>> processorClasses =
			new HashSet<Class<? extends Processor>>();
}